package ricm4.ar.tp2;
import java.io.IOException;
import java.rmi.Remote; 
import java.rmi.RemoteException; 

public interface ISupplier extends Remote {
	/**
	 * renvoie la valeur de la propriété os.name
	 * @return la valeur de os.name
	 * @throws RemoteException
	 */
	public String question() throws RemoteException;
	/**
	 * renvoie la valeur de la propriété de nom s
	 * @param s le nom de la propriété choisie
	 * @return la valeur de cette propriété
	 * @throws RemoteException
	 */
	public String question(String s) throws RemoteException;
	/**
	 * met à jour le paramètre s en le complétant par =<valeur de la propriété correspondante>
	 * @param s
	 * @throws IOException 
	 */
	public void question(Appendable s) throws IOException, RemoteException;
	public IProperty question(StringBuilder s) throws RemoteException;
	/**
	 * renvoie le nom du Provider : nom générique suivi du rang
	 * @return le nom du Provider
	 * @throws RemoteException
	 */
	public String name() throws RemoteException;
}